SPSS 主要数值函数

本教程涵盖了一些用于编辑数值变量的常用和不太常用的函数。您可以下载并打开 hospital.sav 文件来跟随本教程进行操作。我们将使用的语法可以复制粘贴或从这里下载。

SPSS Hospital Dataset

指定用户缺失值 (User Missing Values)

本教程仅使用数据中的最后 2 个变量。这些是顺序变量,严格来说,不允许对它们进行计算。然而,正如等距假设中所解释的那样,这仍然是一种常见的做法。在做任何其他事情之前,我们首先指定 6 作为 用户缺失值,通过运行下面的 语法 (syntax) 行。

***指定 6 作为 food_rating 和 facilities_rating 的用户缺失值。***
MISSING VALUES food_rating facilities_rating (6).

SPSS 加法 (Additions)

在 SPSS 中,可以使用 + 运算符 (operator) 简单地进行数值加法。下面的语法给出了一个示例,通过计算 add_1 作为 food_ratingfacilities_rating 的加法。

***添加 food_rating 和 facilities_rating。***
COMPUTE add_1 = food_rating + facilities_rating.
EXECUTE.

需要记住的一件事是,如果任何一个操作数(主要是“输入变量”)是缺失值,那么结果将是一个 系统缺失值 (system missing value)。可以使用 SUM 函数来避免这种情况,我们将在后面讨论它。

有效值 + 缺失值 = 缺失值

SPSS 减法 (Subtractions)

在 SPSS 中减去数值非常简单,可以使用 - 运算符 (operator) 完成,如下面的语法所示。

***从 facilities_rating 中减去 food_rating。***
COMPUTE sub_1 = facilities_rating - food_rating.
EXECUTE.

SPSS 乘法 (Multiplications)

在 SPSS 中,可以使用 *** 运算符 (operator)** 进行数值乘法。下面的语法演示了这一点。

***将 food_rating 与 facilities_rating 相乘。***
COMPUTE multiply_1 = food_rating * facilities_rating.
EXECUTE.

SPSS 除法 (Divisions)

只需使用 / 运算符 (operator) 在 SPSS 中进行除法。下面的语法给出了一个示例。

***将 food_rating 除以 facilities_rating。***
COMPUTE divide_1 = food_rating / facilities_rating.
EXECUTE.

SPSS 指数运算 (Exponentiations)

在 SPSS 中,指数运算使用 **** 运算符 (operator)**。下面的语法给出了一些示例。请注意,您还可以通过指数运算计算(平方或其他)根,如第二个示例所示。

***1. 求 food_rating 的平方。***
COMPUTE exponentiate_1 = food_rating ** 2.
EXECUTE.

***2. 计算 food_rating 的立方根。***
COMPUTE exponentiate_2 = food_rating ** (1/3).
EXECUTE.

***3. 将 food_rating 提高到 facilities_rating 的幂。***
COMPUTE exponentiate_3 = food_rating ** facilities_rating.
EXECUTE.

SPSS SQRT 函数

在 SPSS 中计算平方根可以通过将一个数字求幂到 0.5 次方来完成,如前面的语法示例所示。对于不太喜欢数学的人来说,SPSS 还有一个 SQRT 函数。为了完整起见,我们将在下面演示它。

***计算 food_rating 的平方根。***
COMPUTE square_root_1 = SQRT(food_rating).
EXECUTE.

SPSS RND 函数

在 SPSS 中,使用 RND 函数进行数值舍入。RND 接受一个可选的第二个参数,即要舍入到的最接近的值。例如,您可以舍入到最接近的四分之一值(下面的第二个示例)或十倍值(第三个示例)。如果省略第二个参数,则值将舍入到最接近的整数(第一个示例)。请注意,下面的语法使用了一些在前面的示例中计算的变量。

SPSS RND Function Results SPSS RND 函数可以将值舍入为整数、四分之一值和十倍值

SPSS RND 语法示例

***1. 将 square_root_1 舍入到最接近的整数。***
COMPUTE rnd_1 = RND(square_root_1).
EXECUTE.

***2. 将 square_root_1 舍入到最接近的四分之一值。***
COMPUTE rnd_2 = RND(square_root_1, .25).
EXECUTE.

***3. 将 exponentiate_3 舍入到最接近的十倍值。***
COMPUTE rnd_3 = RND(exponentiate_3, 10).
EXECUTE.

SPSS TRUNC 函数

截断数值基本上意味着将它们向下舍入到最接近的整数或其他值。SPSS 包含一个 TRUNC 函数来执行此操作。它接受一个可选的第二个参数,即要截断到的最接近的值。例如,您可以将数字截断到最接近的十倍值(下面的第三个示例)或四分之一值(第二个示例)。如果省略第二个参数,则数字将截断到最接近的整数。请注意,下面的语法使用了一些在前面的示例中计算的变量。

SPSS TRUNC 语法示例

***1. 将 square_root_1 截断到最接近的整数。***
COMPUTE trunc_1 = TRUNC(square_root_1).
EXECUTE.

***2. 将 square_root_1 截断到最接近的四分之一值。***
COMPUTE trunc_2 = TRUNC(square_root_1, .25).
EXECUTE.

***3. 将 exponentiate_3 截断到最接近的十倍值。***
COMPUTE trunc_3 = TRUNC(exponentiate_3, 10).
EXECUTE.

SPSS MOD 函数

模数函数 (modulus function) 返回一个数在尽可能多次减去第二个数后的余数。请注意,它基本上与截断相反;我们现在扔掉除余数之外的所有东西,而不是扔掉余数。在 SPSS 中,MOD(a,b) 表示“从 a 中尽可能多次减去 b,并返回 a 的余数”。如果这听起来仍然有点抽象,请尝试运行下面的语法中的两个示例。请注意,它使用了前面示例中的一些变量。结果也显示在下面的屏幕截图中。

SPSS MOD 语法示例

***1. 提取 square_root_1 的小数部分。***
COMPUTE mod_1 = MOD(square_root_1, 1).
EXECUTE.

***2. 删除 exponentiate_3 的所有十倍值。***
COMPUTE mod_2 = MOD(exponentiate_3, 10).
EXECUTE.

SPSS Modulus Function